600
|
How can I display the currency only for not empty cells
![](images/exgridq600.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Currency')) as EXGRIDLib_TLB.Column).ComputedField := 'len(%0) ? currency(dbl(%0)) : ''''';
with Items do
begin
AddItem('1.23');
AddItem('2.34');
AddItem('0');
ItemBackColor[AddItem(Null)] := $8080ff;
AddItem('10000.99');
end;
end
|
599
|
Is there a function to display the number of days between two date including the number of hours
![](images/exgridq599.png)
with Grid1 do
begin
(IUnknown(Columns.Add('Start')) as EXGRIDLib_TLB.Column).Width := 32;
Columns.Add('End');
(IUnknown(Columns.Add('Duration')) as EXGRIDLib_TLB.Column).ComputedField := '((1:=int(0:= (date(%1)-date(%0)))) != 0 ? (=:1 + '' day(s)'') : '''') + (=:1 ? '' '' : '''' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*' +
'24))) != 0 ? =:1 + '' hour(s) '' : '''' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + '' min(s)'' : '''')';
with Items do
begin
h := AddItem('1/11/2001');
CellValue[OleVariant(h),OleVariant(1)] := '1/14/2001';
h := AddItem('2/22/2002 12:00:00 PM');
CellValue[OleVariant(h),OleVariant(1)] := '3/14/2002 1:00:00 PM';
h := AddItem('3/13/2003');
CellValue[OleVariant(h),OleVariant(1)] := '4/11/2003 11:00:00 AM';
end;
end
|
598
|
Is there a function to display the number of days between two date including the number of hours
![](images/exgridq598.png)
with Grid1 do
begin
Columns.Add('Start');
Columns.Add('End');
(IUnknown(Columns.Add('Duration')) as EXGRIDLib_TLB.Column).ComputedField := '"D " + int(date(%1)-date(%0)) + " H " + round(24*(date(%1)-date(%0) - floor(date(%1)-date(%0))))';
with Items do
begin
h := AddItem('1/11/2001');
CellValue[OleVariant(h),OleVariant(1)] := '1/14/2001 11:00:00 PM';
h := AddItem('2/22/2002 12:00:00 PM');
CellValue[OleVariant(h),OleVariant(1)] := '3/14/2002 1:00:00 PM';
h := AddItem('3/13/2003');
CellValue[OleVariant(h),OleVariant(1)] := '4/11/2003 11:00:00 AM';
end;
end
|
597
|
How can I display the number of days between two dates
![](images/exgridq597.png)
with Grid1 do
begin
Columns.Add('Start');
Columns.Add('End');
(IUnknown(Columns.Add('Duration')) as EXGRIDLib_TLB.Column).ComputedField := '(date(%1)-date(%0)) + '' days''';
with Items do
begin
h := AddItem('1/11/2001');
CellValue[OleVariant(h),OleVariant(1)] := '1/14/2001';
h := AddItem('2/22/2002');
CellValue[OleVariant(h),OleVariant(1)] := '3/14/2002';
h := AddItem('3/13/2003');
CellValue[OleVariant(h),OleVariant(1)] := '4/11/2003';
end;
end
|
596
|
How can I get second part of the date
![](images/exgridq596.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Second')) as EXGRIDLib_TLB.Column).ComputedField := 'sec(date(%0))';
with Items do
begin
AddItem('1/11/2001 10:10:00 AM');
AddItem('2/22/2002 11:01:22 AM');
AddItem('3/13/2003 12:23:01 PM');
AddItem('4/14/2004 1:11:59 PM');
end;
end
|
595
|
How can I get minute part of the date
![](images/exgridq595.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Minute')) as EXGRIDLib_TLB.Column).ComputedField := 'min(date(%0))';
with Items do
begin
AddItem('1/11/2001 10:10:00 AM');
AddItem('2/22/2002 11:01:00 AM');
AddItem('3/13/2003 12:23:00 PM');
AddItem('4/14/2004 1:11:00 PM');
end;
end
|
594
|
How can I check the hour part only so I know it was afternoon
![](images/exgridq594.png)
with Grid1 do
begin
ConditionalFormats.Add('hour(%0)>=12',Null).Bold := True;
Columns.Add('Date');
(IUnknown(Columns.Add('Hour')) as EXGRIDLib_TLB.Column).ComputedField := 'hour(%0)';
with Items do
begin
AddItem('1/11/2001 10:00:00 AM');
AddItem('2/22/2002 11:00:00 AM');
AddItem('3/13/2003 12:00:00 PM');
AddItem('4/14/2004 1:00:00 PM');
end;
end
|
593
|
What about a function to get the day in the week, or days since Sunday
![](images/exgridq593.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('WeekDay')) as EXGRIDLib_TLB.Column).ComputedField := 'weekday(%0)';
with Items do
begin
AddItem('1/11/2001 10:00:00 AM');
AddItem('2/22/2002 11:00:00 AM');
AddItem('3/13/2003 12:00:00 PM');
AddItem('4/14/2004 1:00:00 PM');
end;
end
|
592
|
Is there any function to get the day of the year or number of days since January 1st
![](images/exgridq592.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Day since January 1st')) as EXGRIDLib_TLB.Column).ComputedField := 'yearday(%0)';
with Items do
begin
AddItem('1/11/2001 10:00:00 AM');
AddItem('2/22/2002 11:00:00 AM');
AddItem('3/13/2003 12:00:00 PM');
AddItem('4/14/2004 1:00:00 PM');
end;
end
|
591
|
How can I display only the day of the date
![](images/exgridq591.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Day')) as EXGRIDLib_TLB.Column).ComputedField := 'day(%0)';
with Items do
begin
AddItem('1/11/2001 10:00:00 AM');
AddItem('2/22/2002 11:00:00 AM');
AddItem('3/13/2003 12:00:00 PM');
AddItem('4/14/2004 1:00:00 PM');
end;
end
|
590
|
How can I display only the month of the date
![](images/exgridq590.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Month')) as EXGRIDLib_TLB.Column).ComputedField := 'month(%0)';
with Items do
begin
AddItem('1/1/2001 10:00:00 AM');
AddItem('2/2/2002 11:00:00 AM');
AddItem('3/3/2003 12:00:00 PM');
AddItem('4/4/2004 1:00:00 PM');
end;
end
|
589
|
How can I get only the year part from a date expression
![](images/exgridq589.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Year')) as EXGRIDLib_TLB.Column).ComputedField := 'year(%0)';
with Items do
begin
AddItem('1/1/2001 10:00:00 AM');
AddItem('2/2/2002 11:00:00 AM');
AddItem('3/3/2003 12:00:00 PM');
AddItem('4/4/2004 1:00:00 PM');
end;
end
|
588
|
Can I convert the expression to date
![](images/exgridq588.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Date')) as EXGRIDLib_TLB.Column).ComputedField := 'date(dbl(%0))';
with Items do
begin
AddItem('-1.98');
AddItem('30000.99');
AddItem('3561.23');
AddItem('1232.34');
end;
end
|
587
|
Can I convert the expression to a number, double or float
![](images/exgridq587.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Number + 2')) as EXGRIDLib_TLB.Column).ComputedField := 'dbl(%0)+2';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
586
|
How can I display dates in long format
![](images/exgridq586.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('LongFormat')) as EXGRIDLib_TLB.Column).ComputedField := 'longdate(%0)';
with Items do
begin
AddItem('1/1/2001 10:00:00 AM');
AddItem('2/2/2002 11:00:00 AM');
AddItem('3/3/2003 12:00:00 PM');
AddItem('4/4/2004 1:00:00 PM');
end;
end
|
585
|
How can I display dates in short format
![](images/exgridq585.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('ShortFormat')) as EXGRIDLib_TLB.Column).ComputedField := 'shortdate(%0)';
with Items do
begin
AddItem('1/1/2001 10:00:00 AM');
AddItem('2/2/2002 11:00:00 AM');
AddItem('3/3/2003 12:00:00 PM');
AddItem('4/4/2004 1:00:00 PM');
end;
end
|
584
|
How can I display the time only of a date expression
![](images/exgridq584.png)
with Grid1 do
begin
Columns.Add('Date');
(IUnknown(Columns.Add('Time')) as EXGRIDLib_TLB.Column).ComputedField := '''time is:'' + time(date(%0))';
with Items do
begin
AddItem('1/1/2001 10:00:00 AM');
AddItem('2/2/2002 11:00:00 AM');
AddItem('3/3/2003 12:00:00 PM');
AddItem('4/4/2004 1:00:00 PM');
end;
end
|
583
|
Is there any function to display currencies, or money formatted as in the control panel
![](images/exgridq583.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Currency')) as EXGRIDLib_TLB.Column).ComputedField := 'currency(dbl(%0))';
with Items do
begin
AddItem('1.23');
AddItem('2.34');
AddItem('10000.99');
end;
end
|
582
|
How can I convert the expression to a string so I can look into the date string expression for month's name
![](images/exgridq582.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Str')) as EXGRIDLib_TLB.Column).ComputedField := 'str(%0) + '' AA''';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
581
|
Can I display the absolute value or positive part of the number
![](images/exgridq581.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Abs')) as EXGRIDLib_TLB.Column).ComputedField := 'abs(%0)';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
580
|
Is there any function to get largest number with no fraction part that is not greater than the value
![](images/exgridq580.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Floor')) as EXGRIDLib_TLB.Column).ComputedField := 'floor(%0)';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
579
|
Is there any function to round the values base on the .5 value
![](images/exgridq579.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Round')) as EXGRIDLib_TLB.Column).ComputedField := 'round(%0)';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
578
|
How can I get or display the integer part of the cell
![](images/exgridq578.png)
with Grid1 do
begin
Columns.Add('Number');
(IUnknown(Columns.Add('Int')) as EXGRIDLib_TLB.Column).ComputedField := 'int(%0)';
with Items do
begin
AddItem('-1.98');
AddItem('0.99');
AddItem('1.23');
AddItem('2.34');
end;
end
|
577
|
How can I display names as proper ( first leter of the word must be in uppercase, and the rest in lowercase )
![](images/exgridq577.png)
with Grid1 do
begin
(IUnknown(Columns.Add('')) as EXGRIDLib_TLB.Column).FormatColumn := 'proper(%0)';
with Items do
begin
h := AddItem('root');
InsertItem(h,Null,'child child');
InsertItem(h,Null,'child child');
InsertItem(h,Null,'child child');
ExpandItem[h] := True;
end;
end
|
576
|
Is there any option to display cells in uppercase
![](images/exgridq576.png)
with Grid1 do
begin
(IUnknown(Columns.Add('')) as EXGRIDLib_TLB.Column).FormatColumn := 'upper(%0)';
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'Chld 3');
ExpandItem[h] := True;
end;
end
|
575
|
Is there any option to display cells in lowercase
![](images/exgridq575.png)
with Grid1 do
begin
(IUnknown(Columns.Add('')) as EXGRIDLib_TLB.Column).FormatColumn := 'lower(%0)';
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'Chld 3');
ExpandItem[h] := True;
end;
end
|
574
|
How can I display the column using currency format and enlarge the font for certain values
![](images/exgridq574.png)
with Grid1 do
begin
with (IUnknown(Columns.Add('Currency')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellValueFormat] := OleVariant(1);
FormatColumn := 'len(value) ? ((0:=dbl(value)) < 10 ? ''<fgcolor=808080><font ;7>'' : ''<b>'') + currency(=:0)';
end;
with Items do
begin
AddItem('1.23');
AddItem('2.34');
AddItem('9.94');
AddItem('11.94');
AddItem('1000');
end;
end
|
573
|
How can I highlight only parts of the cells
![](images/exgridq573.png)
with Grid1 do
begin
with (IUnknown(Columns.Add('')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellValueFormat] := OleVariant(1);
FormatColumn := 'value replace ''hil'' with ''<fgcolor=FF0000><b>hil</b></fgcolor>''';
end;
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'Child 3');
ExpandItem[h] := True;
end;
end
|
572
|
How can I get the number of occurrences of a specified string in the cell
![](images/exgridq572.png)
with Grid1 do
begin
Columns.Add('');
with (IUnknown(Columns.Add('occurrences')) as EXGRIDLib_TLB.Column) do
begin
ComputedField := 'lower(%0) count ''o''';
FormatColumn := '''contains '' + value + '' of \''o\'' chars''';
end;
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1 oooof the root');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'Child 3');
ExpandItem[h] := True;
end;
end
|
571
|
How can I display dates in my format
![](images/exgridq571.png)
with Grid1 do
begin
with (IUnknown(Columns.Add('Date')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellValueFormat] := OleVariant(1);
FormatColumn := '''<b>'' + year(0:=date(value)) + ''</b><fgcolor=808080><font ;6> ('' + month(=:0) + '' - '' + day(=:0) +'')''';
end;
with Items do
begin
AddItem('1/21/2001');
AddItem('2/22/2002');
AddItem('3/13/2003');
AddItem('4/24/2004');
end;
end
|
570
|
How can I display dates in short format
![](images/exgridq570.png)
with Grid1 do
begin
(IUnknown(Columns.Add('Date')) as EXGRIDLib_TLB.Column).FormatColumn := 'shortdate(value)';
with Items do
begin
AddItem('1/1/2001');
AddItem('2/2/2002');
AddItem('3/3/2003');
AddItem('4/4/2004');
end;
end
|
569
|
How can I display dates in long format
![](images/exgridq569.png)
with Grid1 do
begin
(IUnknown(Columns.Add('Date')) as EXGRIDLib_TLB.Column).FormatColumn := 'longdate(value)';
with Items do
begin
AddItem('1/1/2001');
AddItem('2/2/2002');
AddItem('3/3/2003');
AddItem('4/4/2004');
end;
end
|
568
|
How can I display only the right part of the cell
![](images/exgridq568.png)
with Grid1 do
begin
Columns.Add('');
with (IUnknown(Columns.Add('Right')) as EXGRIDLib_TLB.Column) do
begin
ComputedField := '%0 right 2';
FormatColumn := '''"'' + value + ''"''';
end;
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'SChild 3');
ExpandItem[h] := True;
end;
end
|
567
|
How can I display only the left part of the cell
![](images/exgridq567.png)
with Grid1 do
begin
Columns.Add('');
(IUnknown(Columns.Add('Left')) as EXGRIDLib_TLB.Column).ComputedField := '%0 left 2';
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
InsertItem(h,Null,'SChild 3');
ExpandItem[h] := True;
end;
end
|
566
|
How can I display true or false instead 0 and -1
![](images/exgridq566.png)
with Grid1 do
begin
(IUnknown(Columns.Add('Boolean')) as EXGRIDLib_TLB.Column).FormatColumn := 'value != 0 ? ''true'' : ''false''';
with Items do
begin
AddItem(OleVariant(True));
AddItem(OleVariant(False));
AddItem(OleVariant(True));
AddItem(OleVariant(0));
AddItem(OleVariant(1));
end;
end
|
565
|
How can I save data on XML format
![](images/exgridq565.png)
with Grid1 do
begin
LoadXML('http://www.exontrol.net/testing.xml');
SaveXML('c:/temp/exgrid.xml');
end
|
564
|
How can I load data on XML format
![](images/exgridq564.png)
with Grid1 do
begin
LoadXML('http://www.exontrol.net/testing.xml');
end
|
563
|
I have an EBN file how can I apply different colors to it, so no need to create a new one
![](images/exgridq563.png)
with Grid1 do
begin
VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
SelBackColor := BackColor;
SelForeColor := ForeColor;
HasLines := EXGRIDLib_TLB.exNoLine;
Columns.Add('Default');
with Items do
begin
h := AddItem('Root');
hC := InsertItem(h,Null,'Default');
ItemBackColor[hC] := $1000000;
ItemHeight[InsertItem(h,Null,'')] := 6;
hC := InsertItem(h,Null,'Light Green');
ItemBackColor[hC] := $100ff00;
ItemHeight[InsertItem(h,Null,'')] := 6;
hC := InsertItem(h,Null,'Dark Green');
ItemBackColor[hC] := $1007f00;
ItemHeight[InsertItem(h,Null,'')] := 6;
hC := InsertItem(h,Null,'Magenta');
ItemBackColor[hC] := $1ff7fff;
ItemHeight[InsertItem(h,Null,'')] := 6;
hC := InsertItem(h,Null,'Yellow');
ItemBackColor[hC] := $17fffff;
ItemHeight[InsertItem(h,Null,'')] := 6;
ExpandItem[h] := True;
end;
end
|
562
|
How can I change the background color or the visual appearance using ebn for a particular column
![](images/exgridq562.png)
with Grid1 do
begin
VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
with Columns do
begin
Add('Column 1');
(IUnknown(Add('Column 2')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exHeaderBackColor] := OleVariant(16777216);
(IUnknown(Add('Column 3')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exHeaderBackColor] := OleVariant(16777471);
Add('Column 4');
end;
end
|
561
|
How can I change the foreground color for a particular column
![](images/exgridq561.png)
with Grid1 do
begin
with Columns do
begin
Add('Column 1');
(IUnknown(Add('Column 2')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exHeaderForeColor] := OleVariant(8439039);
Add('Column 3');
end;
end
|
560
|
How can I change the background color for a particular column
![](images/exgridq560.png)
with Grid1 do
begin
with Columns do
begin
Add('Column 1');
(IUnknown(Add('Column 2')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exHeaderBackColor] := OleVariant(8439039);
Add('Column 3');
end;
end
|
559
|
Does your control support RightToLeft property for RTL languages or right to left
![](images/exgridq559.png)
with Grid1 do
begin
BeginUpdate();
ScrollBars := EXGRIDLib_TLB.exDisableBoth;
LinesAtRoot := EXGRIDLib_TLB.exLinesAtRoot;
with (IUnknown(Columns.Add('P1')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellHasCheckBox] := OleVariant(True);
PartialCheck := True;
end;
with Items do
begin
h := AddItem('Root');
InsertItem(h,Null,'Child 1');
InsertItem(h,Null,'Child 2');
ExpandItem[h] := True;
end;
RightToLeft := True;
EndUpdate();
end
|
558
|
Is there any way to display the vertical scroll bar on the left side, as I want to align my data to the right
![](images/exgridq558.png)
with Grid1 do
begin
BeginUpdate();
ScrollBars := EXGRIDLib_TLB.exDisableBoth;
with Columns do
begin
Add('C1');
Add('C2');
Add('C3');
Add('C4');
Add('C5');
Add('C6');
Add('C7');
Add('C8');
end;
RightToLeft := True;
EndUpdate();
end
|
557
|
Can I display the cell's check box after the text
![](images/exgridq557.png)
with Grid1 do
begin
with (IUnknown(Columns.Add('Column')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellHasCheckBox] := OleVariant(True);
Def[EXGRIDLib_TLB.exCellDrawPartsOrder] := 'caption,check';
end;
with Items do
begin
CellHasCheckBox[OleVariant(AddItem('Caption 1')),OleVariant(0)] := True;
CellHasCheckBox[OleVariant(AddItem('Caption 2')),OleVariant(0)] := True;
end;
end
|
556
|
Can I change the order of the parts in the cell, as checkbox after the text, and so on
![](images/exgridq556.png)
with Grid1 do
begin
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
(IUnknown(Columns.Add('Column')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exCellDrawPartsOrder] := 'caption,check,icon,icons,picture';
with Items do
begin
h := AddItem('Text');
CellImage[OleVariant(h),OleVariant(0)] := 1;
CellHasCheckBox[OleVariant(h),OleVariant(0)] := True;
end;
end
|
555
|
Can I have an image displayed after the text. Can I get that effect without using HTML content
![](images/exgridq555.png)
with Grid1 do
begin
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
(IUnknown(Columns.Add('Column')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exCellDrawPartsOrder] := 'caption,icon,check,icons,picture';
with Items do
begin
h := AddItem('Text');
CellImage[OleVariant(h),OleVariant(0)] := 1;
end;
end
|
554
|
How can I display the column's header using multiple lines
![](images/exgridq554.png)
with Grid1 do
begin
HeaderHeight := 128;
HeaderSingleLine := False;
(IUnknown(Columns.Add('This is just a column that should break the header.')) as EXGRIDLib_TLB.Column).Width := 32;
Columns.Add('This is just another column that should break the header.');
end
|
553
|
How can include the values in the inner cells in the drop down filter window
![](images/exgridq553.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exRowLines;
VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
Description[EXGRIDLib_TLB.exFilterBarBlanks] := '';
Description[EXGRIDLib_TLB.exFilterBarNonBlanks] := '';
with (IUnknown(Columns.Add('Single Column')) as EXGRIDLib_TLB.Column) do
begin
HTMLCaption := 'Single column with <b>inner cells</b>';
ToolTip := 'Click the drop down filter button, and the filter list includes the inner cells values too.';
DisplayFilterButton := True;
DisplayFilterPattern := False;
FilterList := EXGRIDLib_TLB.exIncludeInnerCells;
end;
ShowFocusRect := False;
with Items do
begin
s := SplitCell[OleVariant(AddItem('S 1.1')),OleVariant(0)];
CellValue[Null,OleVariant(s)] := 'S 1.2';
CellHAlignment[Null,OleVariant(s)] := EXGRIDLib_TLB.CenterAlignment;
CellBackColor[Null,OleVariant(s)] := $1000000;
CellWidth[Null,OleVariant(s)] := 84;
s := SplitCell[OleVariant(AddItem('S 2.1')),OleVariant(0)];
CellValue[Null,OleVariant(s)] := 'S 2.2';
CellHAlignment[Null,OleVariant(s)] := EXGRIDLib_TLB.CenterAlignment;
CellWidth[Null,OleVariant(s)] := 84;
s := SplitCell[OleVariant(AddItem('S 3.1')),OleVariant(0)];
CellValue[Null,OleVariant(s)] := 'S 3.2';
CellHAlignment[Null,OleVariant(s)] := EXGRIDLib_TLB.CenterAlignment;
CellBackColor[Null,OleVariant(s)] := $1000000;
CellWidth[Null,OleVariant(s)] := 84;
end;
end
|
552
|
How can I sort the value gets listed in the drop down filter window
![](images/exgridq552.png)
with Grid1 do
begin
LinesAtRoot := EXGRIDLib_TLB.exLinesAtRoot;
MarkSearchColumn := False;
Description[EXGRIDLib_TLB.exFilterBarAll] := '';
Description[EXGRIDLib_TLB.exFilterBarBlanks] := '';
Description[EXGRIDLib_TLB.exFilterBarNonBlanks] := '';
with (IUnknown(Columns.Add('P1')) as EXGRIDLib_TLB.Column) do
begin
DisplayFilterButton := True;
DisplayFilterPattern := False;
FilterList := EXGRIDLib_TLB.exSortItemsDesc;
end;
with (IUnknown(Columns.Add('P2')) as EXGRIDLib_TLB.Column) do
begin
DisplayFilterButton := True;
DisplayFilterPattern := False;
FilterList := EXGRIDLib_TLB.exSortItemsAsc;
end;
with Items do
begin
h := AddItem('Z3');
CellValue[OleVariant(h),OleVariant(1)] := 'C';
CellValue[OleVariant(InsertItem(h,Null,'Z1')),OleVariant(1)] := 'B';
CellValue[OleVariant(InsertItem(h,Null,'Z2')),OleVariant(1)] := 'A';
ExpandItem[h] := True;
end;
end
|
551
|
How can I align the text/caption on the scroll bar
![](images/exgridq551.png)
with Grid1 do
begin
ScrollPartCaption[EXGRIDLib_TLB.exHScroll,EXGRIDLib_TLB.exLowerBackPart] := 'left';
ScrollPartCaptionAlignment[EXGRIDLib_TLB.exHScroll,EXGRIDLib_TLB.exLowerBackPart] := EXGRIDLib_TLB.LeftAlignment;
ScrollPartCaption[EXGRIDLib_TLB.exHScroll,EXGRIDLib_TLB.exUpperBackPart] := 'right';
ScrollPartCaptionAlignment[EXGRIDLib_TLB.exHScroll,EXGRIDLib_TLB.exUpperBackPart] := EXGRIDLib_TLB.RightAlignment;
ColumnAutoResize := False;
Columns.Add(1);
Columns.Add(2);
Columns.Add(3);
Columns.Add(4);
Columns.Add(5);
Columns.Add(6);
end
|
550
|
How do I select the next row/item
![](images/exgridq550.png)
with Grid1 do
begin
Columns.Add('Column');
with Items do
begin
AddItem('Item 1');
AddItem('Item 2');
AddItem('Item 3');
SelectItem[NextVisibleItem[FocusItem]] := True;
end;
end
|
549
|
How do I enable resizing ( changing the height ) the items at runtime
![](images/exgridq549.png)
with Grid1 do
begin
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
DrawGridLines := EXGRIDLib_TLB.exHLines;
ScrollBySingleLine := True;
Columns.Add('Column');
Items.AddItem('Item 1');
with Items do
begin
ItemHeight[AddItem('Item 2')] := 48;
end;
Items.AddItem('Item 3');
Items.AddItem('Item 4');
end
|
548
|
How do I enable resizing all the items at runtime
![](images/exgridq548.png)
with Grid1 do
begin
ItemsAllowSizing := EXGRIDLib_TLB.exResizeAllItems;
DrawGridLines := EXGRIDLib_TLB.exHLines;
Columns.Add('Column');
Items.AddItem('Item 1');
with Items do
begin
ItemHeight[AddItem('Item 2')] := 48;
end;
Items.AddItem('Item 3');
end
|
547
|
How can I remove the filter
with Grid1 do
begin
with (IUnknown(Columns.Add('Column')) as EXGRIDLib_TLB.Column) do
begin
DisplayFilterButton := True;
FilterType := EXGRIDLib_TLB.exBlanks;
end;
ApplyFilter();
ClearFilter();
end
|
546
|
How can I vertically display the column's caption, in the header
![](images/exgridq546.png)
with Grid1 do
begin
(IUnknown(Columns.Add('A')) as EXGRIDLib_TLB.Column).HeaderVertical := True;
(IUnknown(Columns.Add('B')) as EXGRIDLib_TLB.Column).HeaderVertical := True;
(IUnknown(Columns.Add('H')) as EXGRIDLib_TLB.Column).HeaderVertical := False;
end
|
545
|
When I have a column in a grid that is set to having a checkbox, and the grid's singlesel is set to false, I am able to toggle the checkboxes for a while, but lose this functionality eventually. Do you have a tip
![](images/exgridq545.png)
with Grid1 do
begin
(IUnknown(Columns.Add('Check')) as EXGRIDLib_TLB.Column).Def[EXGRIDLib_TLB.exCellHasCheckBox] := OleVariant(True);
SingleSel := False;
with Items do
begin
AddItem(OleVariant(True));
AddItem(OleVariant(False));
AddItem(OleVariant(False));
end;
end
|
544
|
How do I arrange, format or layout the item on multiple levels or lines, as a subform
![](images/exgridq544.png)
with Grid1 do
begin
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
DrawGridLines := EXGRIDLib_TLB.exRowLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
MarkSearchColumn := False;
ScrollBySingleLine := True;
BackColor := RGB(255,255,255);
SelBackColor := RGB(255,255,255);
SelForeColor := $80000012;
with Columns do
begin
Add('');
var_Column := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column do
begin
Visible := False;
Editor.EditType := EXGRIDLib_TLB.EditType;
end;
var_Column1 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column1 do
begin
Visible := False;
Editor.EditType := EXGRIDLib_TLB.DropDownType;
end;
var_Column2 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column2 do
begin
Visible := False;
Editor.EditType := EXGRIDLib_TLB.DropDownType;
end;
var_Column3 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column3 do
begin
Visible := False;
with Editor do
begin
EditType := EXGRIDLib_TLB.CheckValueType;
Option[EXGRIDLib_TLB.exCheckValue2] := OleVariant(1);
end;
end;
var_Column4 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column4 do
begin
Visible := False;
Editor.EditType := EXGRIDLib_TLB.DateType;
end;
(IUnknown(Add('Column')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column5 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column5 do
begin
Visible := False;
Editor.EditType := EXGRIDLib_TLB.DropDownType;
end;
var_Column6 := (IUnknown(Add('Column')) as EXGRIDLib_TLB.Column);
with var_Column6 do
begin
Visible := False;
Def[EXGRIDLib_TLB.exCellSingleLine] := OleVariant(0);
var_Editor := Editor;
with var_Editor do
begin
EditType := EXGRIDLib_TLB.MemoType;
ButtonWidth := 17;
Option[EXGRIDLib_TLB.exDownArrow] := OleVariant(0);
Option[EXGRIDLib_TLB.exEndKey] := OleVariant(0);
Option[EXGRIDLib_TLB.exHomeKey] := OleVariant(0);
Option[EXGRIDLib_TLB.exLeftArrow] := OleVariant(0);
Option[EXGRIDLib_TLB.exMemoAutoSize] := OleVariant(0);
Option[EXGRIDLib_TLB.exMemoVScrollBar] := OleVariant(-1);
Option[EXGRIDLib_TLB.exPageDownKey] := OleVariant(0);
Option[EXGRIDLib_TLB.exPageUpKey] := OleVariant(0);
Option[EXGRIDLib_TLB.exRightArrow] := OleVariant(0);
Option[EXGRIDLib_TLB.exUpArrow] := OleVariant(0);
end;
Visible := False;
end;
(IUnknown(Add('Column')) as EXGRIDLib_TLB.Column).Visible := False;
end;
with Items do
begin
h0 := AddItem('');
CellValue[OleVariant(h0),OleVariant(9)] := 'Dismiss';
CellFormatLevel[OleVariant(h0),OleVariant(0)] := '12;" "[b=0][bg=RGB(248,248,248)]/(" "[b=0][bg=RGB(248,248,248)]:12,(1;" "[b=0]/(" "[b=0]:1,(25;(5;" "[b=0]/(("Subject:"[b=0]:80,' +
'(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1,(" "[b=0][bg=RGB(255,0,0)]:5,1[b=0])," "[b=0][bg=RGB(0,0,0)]:1)/1;" "[b=0]' +
'[bg=RGB(0,0,0)]))/1;" "[b=0]))/20;("Location:"[b=0]:80,(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1,2[b=0]," "[b=0][bg=' +
'RGB(0,0,0)]:1)/1;" "[b=0][bg=RGB(0,0,0)]),((" "[b=0]:10,"Label:"[b=0])):50,(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1' +
',3[b=0]," "[b=0][bg=RGB(0,0,0)]:1)/1;" "[b=0][bg=RGB(0,0,0)]))/50;(10;" "[b=0]/(1;" "[b=0][bg=RGB(255,0,0)]/("Recurrence:"[b=0]:' +
'80,"Occurs every day effective 20/04/2007 from 01:00 to 01:01."[b=0])/1;" "[b=0][bg=RGB(255,0,0)])/10;" "[b=0])/23;(4[b=0]:20,"R' +
'eminder:"[b=0]:60,(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1,5[b=0]," "[b=0][bg=RGB(0,0,0)]:1)/1;" "[b=0][bg=RGB(0,0,' +
'0)]),((" "[b=0]:5,6[b=0])):30,((" "[b=0]:10,"Show time as:"[b=0])):90,(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1,7[b=' +
'0]," "[b=0][bg=RGB(0,0,0)]:1)/1;" "[b=0][bg=RGB(0,0,0)]))/(12;" "[b=0]/(1;" "[b=0][bg=RGB(0,0,0)]/(" "[b=0][bg=RGB(0,0,0)]:1,8[b' +
'=0]," "[b=0][bg=RGB(0,0,0)]:1)/1;" "[b=0][bg=RGB(0,0,0)]))/35;(5;" "[b=0]/(" "[b=0]," "[b=0],((" "[b=0]:40,9[b=0])))/5;" "[b=0])' +
')," "[b=0]:1)/1;" "[b=0])," "[b=0][bg=RGB(248,248,248)]:12)/12;" "[b=0][bg=RGB(248,248,248)]';
CellHasCheckBox[OleVariant(h0),OleVariant(4)] := True;
CellHasButton[OleVariant(h0),OleVariant(9)] := True;
CellHAlignment[OleVariant(h0),OleVariant(9)] := EXGRIDLib_TLB.CenterAlignment;
CellVAlignment[OleVariant(h0),OleVariant(8)] := EXGRIDLib_TLB.exTop;
CellForeColor[OleVariant(h0),OleVariant(8)] := $0;
CellHasButton[OleVariant(h0),OleVariant(6)] := True;
CellValue[OleVariant(h0),OleVariant(6)] := '<img>1</img>';
CellValueFormat[OleVariant(h0),OleVariant(6)] := EXGRIDLib_TLB.exHTML;
CellHAlignment[OleVariant(h0),OleVariant(6)] := EXGRIDLib_TLB.CenterAlignment;
ItemHeight[h0] := 296;
end;
end
|
543
|
How do I arrange, format or layout the item on multiple levels or lines
![](images/exgridq543.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
MarkSearchColumn := False;
DefaultItemHeight := 34;
(IUnknown(Columns.Add(1)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(2)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(3)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(4)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(5)) as EXGRIDLib_TLB.Column).Visible := False;
Columns.Add('General');
with Items do
begin
DefaultItem := AddItem(OleVariant(0));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(1);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(2);
CellValue[OleVariant(0),OleVariant(3)] := OleVariant(3);
CellValue[OleVariant(0),OleVariant(4)] := OleVariant(4);
CellFormatLevel[OleVariant(DefaultItem),OleVariant(5)] := '0,1,2/3,4';
DefaultItem := AddItem(OleVariant(5));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(6);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(7);
CellValue[OleVariant(0),OleVariant(3)] := OleVariant(8);
CellValue[OleVariant(0),OleVariant(4)] := OleVariant(9);
CellFormatLevel[OleVariant(DefaultItem),OleVariant(5)] := '3,4/0,1,2';
end;
end
|
542
|
How do I arrange, format or layout the column's header on multiple levels or lines
![](images/exgridq542.png)
with Grid1 do
begin
(IUnknown(Columns.Add(1)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(2)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(3)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(4)) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add(5)) as EXGRIDLib_TLB.Column).Visible := False;
HeaderHeight := 32;
(IUnknown(Columns.Add('General')) as EXGRIDLib_TLB.Column).FormatLevel := '0,1,2/3,4';
end
|
541
|
How do I arrange, format or layout the item on multiple levels or lines
![](images/exgridq541.png)
with Grid1 do
begin
MarkSearchColumn := False;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
DefaultItemHeight := 53;
(IUnknown(Columns.Add('EmployeeID')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('LastName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('FirstName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Handler')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column := (IUnknown(Columns.Add('Title')) as EXGRIDLib_TLB.Column);
with var_Column do
begin
Visible := False;
DisplayFilterButton := True;
end;
var_Column1 := (IUnknown(Columns.Add('TitleOfCourtesy')) as EXGRIDLib_TLB.Column);
with var_Column1 do
begin
Visible := False;
DisplayFilterButton := True;
end;
(IUnknown(Columns.Add('BirthDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HideDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Address')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('City')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Region')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('PostCode')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Country')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HomePage')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Extension')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column2 := (IUnknown(Columns.Add('Photo')) as EXGRIDLib_TLB.Column);
with var_Column2 do
begin
Visible := False;
with Editor do
begin
DropDownVisible := False;
EditType := EXGRIDLib_TLB.PictureType;
Option[EXGRIDLib_TLB.exShowPictureType] := OleVariant(0);
end;
end;
(IUnknown(Columns.Add('Notes')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('ReportsTo')) as EXGRIDLib_TLB.Column).Visible := False;
with (IUnknown(Columns.Add('Personal Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '15:54,(2/1/4)';
FormatLevel := '18;18/(15:54,(2/1/4))';
Width := 196;
end;
with (IUnknown(Columns.Add('General Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '(8/18;5):128,((((13/11/12),(6/7/10)),16))';
FormatLevel := '18;19/((8/18;5):128,((((13/11/12),(6/7/10)),16)))';
Width := 512;
end;
with Items do
begin
h0 := AddItem(OleVariant(1));
CellValue[OleVariant(h0),OleVariant(1)] := 'Davolio';
CellValue[OleVariant(h0),OleVariant(2)] := 'Nancy';
CellValue[OleVariant(h0),OleVariant(3)] := OleVariant(0);
CellValue[OleVariant(h0),OleVariant(4)] := 'Sales Representative';
CellValue[OleVariant(h0),OleVariant(5)] := 'Ms.';
CellValue[OleVariant(h0),OleVariant(6)] := '12/8/1948';
CellValue[OleVariant(h0),OleVariant(7)] := '5/1/1992';
CellValue[OleVariant(h0),OleVariant(8)] := '507-20th Ave. \r\nE.Apt. 2A';
CellValue[OleVariant(h0),OleVariant(9)] := 'Seattle';
CellValue[OleVariant(h0),OleVariant(10)] := 'WA';
CellValue[OleVariant(h0),OleVariant(11)] := '98122';
CellValue[OleVariant(h0),OleVariant(12)] := 'USA';
CellValue[OleVariant(h0),OleVariant(13)] := '(206) 555-9857';
CellValue[OleVariant(h0),OleVariant(14)] := '5467';
CellValue[OleVariant(h0),OleVariant(15)] := Grid1.ExecuteTemplate('loadpicture(`c:\exontrol\images\sample.bmp`)');
CellValue[OleVariant(h0),OleVariant(16)] := 'Education includes a BA in psychology from Colorado State University in 1970. She also completed "The Art of the Cold Call." N' +
'ancy is a member of ToastmastersInternational.';
CellValue[OleVariant(h0),OleVariant(17)] := OleVariant(2);
end;
PutItems(GetItems(OleVariant(0)),Null);
with Items do
begin
CellFormatLevel[OleVariant(FocusItem),'General Info'] := '15,10,4';
CellFormatLevel[OleVariant(FocusItem),'Personal Info'] := '1/2';
end;
end
|
540
|
How do I arrange, format or layout the data on multiple levels or lines
![](images/exgridq540.png)
with Grid1 do
begin
MarkSearchColumn := False;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
DefaultItemHeight := 53;
(IUnknown(Columns.Add('EmployeeID')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('LastName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('FirstName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Handler')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column := (IUnknown(Columns.Add('Title')) as EXGRIDLib_TLB.Column);
with var_Column do
begin
Visible := False;
DisplayFilterButton := True;
end;
var_Column1 := (IUnknown(Columns.Add('TitleOfCourtesy')) as EXGRIDLib_TLB.Column);
with var_Column1 do
begin
Visible := False;
DisplayFilterButton := True;
end;
(IUnknown(Columns.Add('BirthDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HideDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Address')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('City')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Region')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('PostCode')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Country')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HomePage')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Extension')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column2 := (IUnknown(Columns.Add('Photo')) as EXGRIDLib_TLB.Column);
with var_Column2 do
begin
Visible := False;
with Editor do
begin
DropDownVisible := False;
EditType := EXGRIDLib_TLB.PictureType;
Option[EXGRIDLib_TLB.exShowPictureType] := OleVariant(0);
end;
end;
(IUnknown(Columns.Add('Notes')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('ReportsTo')) as EXGRIDLib_TLB.Column).Visible := False;
with (IUnknown(Columns.Add('Personal Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '15:54,(2/1/4)';
FormatLevel := '18;18/(15:54,(2/1/4))';
Width := 196;
end;
with (IUnknown(Columns.Add('General Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '(8/18;5):128,((((13/11/12),(6/7/10)),16))';
FormatLevel := '18;19/((8/18;5):128,((((13/11/12),(6/7/10)),16)))';
Width := 512;
end;
with Items do
begin
h0 := AddItem(OleVariant(1));
CellValue[OleVariant(h0),OleVariant(1)] := 'Davolio';
CellValue[OleVariant(h0),OleVariant(2)] := 'Nancy';
CellValue[OleVariant(h0),OleVariant(3)] := OleVariant(0);
CellValue[OleVariant(h0),OleVariant(4)] := 'Sales Representative';
CellValue[OleVariant(h0),OleVariant(5)] := 'Ms.';
CellValue[OleVariant(h0),OleVariant(6)] := '12/8/1948';
CellValue[OleVariant(h0),OleVariant(7)] := '5/1/1992';
CellValue[OleVariant(h0),OleVariant(8)] := '507-20th Ave. \r\nE.Apt. 2A';
CellValue[OleVariant(h0),OleVariant(9)] := 'Seattle';
CellValue[OleVariant(h0),OleVariant(10)] := 'WA';
CellValue[OleVariant(h0),OleVariant(11)] := '98122';
CellValue[OleVariant(h0),OleVariant(12)] := 'USA';
CellValue[OleVariant(h0),OleVariant(13)] := '(206) 555-9857';
CellValue[OleVariant(h0),OleVariant(14)] := '5467';
CellValue[OleVariant(h0),OleVariant(15)] := Grid1.ExecuteTemplate('loadpicture(`c:\exontrol\images\sample.bmp`)');
CellValue[OleVariant(h0),OleVariant(16)] := 'Education includes a BA in psychology from Colorado State University in 1970. She also completed "The Art of the Cold Call." N' +
'ancy is a member of ToastmastersInternational.';
CellValue[OleVariant(h0),OleVariant(17)] := OleVariant(2);
end;
PutItems(GetItems(OleVariant(0)),Null);
PutItems(GetItems(OleVariant(0)),Null);
PutItems(GetItems(OleVariant(0)),Null);
end
|
539
|
How do I arrange, format or layout the column's data on multiple levels or lines
![](images/exgridq539.png)
with Grid1 do
begin
MarkSearchColumn := False;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
DefaultItemHeight := 68;
(IUnknown(Columns.Add('EmployeeID')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('LastName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('FirstName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Handler')) as EXGRIDLib_TLB.Column).Visible := False;
var_Column := (IUnknown(Columns.Add('Title')) as EXGRIDLib_TLB.Column);
with var_Column do
begin
Visible := False;
DisplayFilterButton := True;
end;
var_Column1 := (IUnknown(Columns.Add('TitleOfCourtesy')) as EXGRIDLib_TLB.Column);
with var_Column1 do
begin
Visible := False;
DisplayFilterButton := True;
end;
(IUnknown(Columns.Add('BirthDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HideDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Address')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('City')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Region')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('PostCode')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Country')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HomePage')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Extension')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Photo')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Notes')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('ReportsTo')) as EXGRIDLib_TLB.Column).Visible := False;
with (IUnknown(Columns.Add('Personal Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '18;18/(15:54,(2/1/4))';
FormatLevel := '18;18/(15:54,(2/1/4))';
Width := 196;
end;
with (IUnknown(Columns.Add('General Info')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellFormatLevel] := '18;19/((8/18;5):128,((((13/11/12),(6/7/10)),16)))';
FormatLevel := '18;19/((8/18;5):128,((((13/11/12),(6/7/10)),16)))';
Width := 512;
end;
Items.AddItem('');
Items.AddItem('');
Items.AddItem('');
Items.AddItem('');
end
|
538
|
How do I arrange, format or layout the column's header on multiple levels or lines
![](images/exgridq538.png)
with Grid1 do
begin
(IUnknown(Columns.Add('EmployeeID')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('LastName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('FirstName')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Handler')) as EXGRIDLib_TLB.Column).Visible := False;
with (IUnknown(Columns.Add('Title')) as EXGRIDLib_TLB.Column) do
begin
Visible := False;
DisplayFilterButton := True;
end;
with (IUnknown(Columns.Add('TitleOfCourtesy')) as EXGRIDLib_TLB.Column) do
begin
Visible := False;
DisplayFilterButton := True;
end;
(IUnknown(Columns.Add('BirthDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HideDate')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Address')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('City')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Region')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('PostCode')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Country')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('HomePage')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Extension')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Photo')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('Notes')) as EXGRIDLib_TLB.Column).Visible := False;
(IUnknown(Columns.Add('ReportsTo')) as EXGRIDLib_TLB.Column).Visible := False;
with (IUnknown(Columns.Add('Personal Info')) as EXGRIDLib_TLB.Column) do
begin
FormatLevel := '18;18/(15:54,(2/1/4))';
Width := 196;
end;
with (IUnknown(Columns.Add('General Info')) as EXGRIDLib_TLB.Column) do
begin
FormatLevel := '18;19/((8/18;5):128,((((13/11/12),(6/7/10)),16)))';
Width := 512;
end;
end
|
537
|
How can I select a cells like in excel
![](images/exgridq537.png)
with Grid1 do
begin
MarkSearchColumn := False;
SingleSel := False;
FullRowSelect := EXGRIDLib_TLB.exRectSel;
(IUnknown(Columns.Add('Column1')) as EXGRIDLib_TLB.Column).Selected := True;
Columns.Add('Column2');
(IUnknown(Columns.Add('Column3')) as EXGRIDLib_TLB.Column).Selected := True;
with Items do
begin
DefaultItem := AddItem(OleVariant(0));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(1);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(2);
DefaultItem := AddItem(OleVariant(3));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(4);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(5);
DefaultItem := AddItem(OleVariant(6));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(7);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(8);
end;
end
|
536
|
How can I select a multiple column
![](images/exgridq536.png)
with Grid1 do
begin
MarkSearchColumn := False;
SingleSel := False;
FullRowSelect := EXGRIDLib_TLB.exRectSel;
(IUnknown(Columns.Add('Column1')) as EXGRIDLib_TLB.Column).Selected := True;
Columns.Add('Column2');
(IUnknown(Columns.Add('Column3')) as EXGRIDLib_TLB.Column).Selected := True;
with Items do
begin
DefaultItem := AddItem(OleVariant(0));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(1);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(2);
DefaultItem := AddItem(OleVariant(3));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(4);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(5);
DefaultItem := AddItem(OleVariant(6));
CellValue[OleVariant(0),OleVariant(1)] := OleVariant(7);
CellValue[OleVariant(0),OleVariant(2)] := OleVariant(8);
end;
Items.SelectAll();
end
|
535
|
How can I select a column
![](images/exgridq535.png)
with Grid1 do
begin
MarkSearchColumn := False;
SingleSel := False;
FullRowSelect := EXGRIDLib_TLB.exRectSel;
(IUnknown(Columns.Add('Column1')) as EXGRIDLib_TLB.Column).Selected := True;
Columns.Add('Column2');
with Items do
begin
CellValue[OleVariant(AddItem('One')),OleVariant(1)] := 'One';
end;
with Items do
begin
CellValue[OleVariant(AddItem('Two')),OleVariant(1)] := 'Two';
end;
Items.SelectAll();
end
|
534
|
How can I collapse all cards
![](images/exgridq534.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(64);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Expanded';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
CollapseAllCards();
end;
end
|
533
|
How can I expand all cards
![](images/exgridq533.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(64);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Expanded';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandAllCards();
end;
end
|
532
|
How can I expand or collapse a card
![](images/exgridq532.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(64);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Expanded';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
531
|
How can I format or arrange the data being displayed in the card
![](images/exgridq531.png)
with Grid1 do
begin
HasButtons := EXGRIDLib_TLB.exNoButtons;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleFormat] := '("Title:",0),1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewWidth] := OleVariant(164);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(18);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
530
|
How can I format or arrange the data being displayed in the card
![](images/exgridq530.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '("ABC",2)/(0,3,"DEFGH")/1/0/1/0/1/1,0[bg=RGB(230,230,230)][fg=RGB(255,0,0)';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleFormat] := '';
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
529
|
How can I hide the tilte for the cards
![](images/exgridq529.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '0/1/0/1/0/1/0/1,0';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleFormat] := '';
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
528
|
How can I display resizing lines between cards
![](images/exgridq528.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewVResizeLine] := OleVariant(True);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHResizeLine] := OleVariant(True);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderWidth] := OleVariant(8);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderHeight] := OleVariant(8);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
527
|
How can edit the text in the card
![](images/exgridq527.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(64);
(IUnknown(Columns.Add('Column 1')) as EXGRIDLib_TLB.Column).Editor.EditType := EXGRIDLib_TLB.EditType;
(IUnknown(Columns.Add('Column 2')) as EXGRIDLib_TLB.Column).Editor.EditType := EXGRIDLib_TLB.EditType;
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
526
|
How can I change the height of the card
![](images/exgridq526.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(64);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
525
|
How can I display the cards from top to bottom
![](images/exgridq525.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewLeftToRight] := OleVariant(False);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
524
|
How do I change the background color for a specified card
![](images/exgridq524.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
ItemForeColor[FocusItem] := $ff;
end;
end
|
523
|
How do I change the visual aspect for a specified card
![](images/exgridq523.png)
with Grid1 do
begin
VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
ItemBackColor[FocusItem] := $1000000;
end;
end
|
522
|
How do I change the background color for a specified card
![](images/exgridq522.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
ItemBackColor[FocusItem] := $ff;
end;
end
|
521
|
Is there any way to specify the foreground color for the title of the cards
![](images/exgridq521.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleForeColor] := OleVariant(255);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
520
|
Is there any way to specify the foreground color for all cards, including its title
![](images/exgridq520.png)
with Grid1 do
begin
ForeColor := RGB(255,0,0);
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
519
|
How can I change the visual appearance for all cards, including the title
![](images/exgridq519.png)
with Grid1 do
begin
VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn');
VisualAppearance.Add(2,'c:\exontrol\images\pushed.ebn');
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBackColor] := OleVariant(16777216);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleBackColor] := OleVariant(33554432);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
518
|
Is there any way to specify the background color for all cards, including its title
![](images/exgridq518.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBackColor] := OleVariant(255);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewTitleBackColor] := OleVariant(128);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
517
|
Is there any way to specify the background color for all cards
![](images/exgridq517.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBackColor] := OleVariant(255);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
516
|
How can I specify the distance between cards
![](images/exgridq516.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderWidth] := OleVariant(16);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderHeight] := OleVariant(16);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
515
|
How can I resize the cards at runtime
![](images/exgridq515.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ItemsAllowSizing := EXGRIDLib_TLB.exResizeItem;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewVResizeLine] := OleVariant(True);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHResizeLine] := OleVariant(True);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderWidth] := OleVariant(8);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewBorderHeight] := OleVariant(8);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
ExpandCard[FocusItem] := True;
end;
end
|
514
|
How can show the grid lines for my cards
![](images/exgridq514.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
513
|
How can I hide the +/- expanding / collapsing buttons in the cards
![](images/exgridq513.png)
with Grid1 do
begin
ExpandOnDblClick := False;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
512
|
How can I hide the +/- expanding / collapsing buttons in the cards
![](images/exgridq512.png)
with Grid1 do
begin
HasButtons := EXGRIDLib_TLB.exNoButtons;
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
511
|
Is there any way to to specify the number of cards being displayed from letf to right
![](images/exgridq511.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewColumns] := OleVariant(3);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
510
|
Is there any way to to specify the width of the cards, so they fit the control's client area
![](images/exgridq510.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewWidth] := OleVariant(0);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewColumns] := OleVariant(2);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
509
|
Is there any way to to specify the width of the cards, so they fit the control's client area
![](images/exgridq509.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewWidth] := OleVariant(0);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
508
|
Is there any way to to specify the width of the cards
![](images/exgridq508.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewWidth] := OleVariant(64);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
507
|
Is there any way to indent the control's data relative to the borders or the frame of the control
![](images/exgridq507.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
HeaderVisible := False;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exBorderWidth] := OleVariant(8);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exBorderHeight] := OleVariant(8);
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
506
|
Is there any way to indent the control's data relative to the borders or the frame of the control
![](images/exgridq506.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
ViewMode := EXGRIDLib_TLB.exTableView;
ViewModeOption[EXGRIDLib_TLB.exTableView,EXGRIDLib_TLB.exBorderWidth] := OleVariant(8);
ViewModeOption[EXGRIDLib_TLB.exTableView,EXGRIDLib_TLB.exBorderHeight] := OleVariant(8);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Item 1')),OleVariant(1)] := 'Item 1.1';
CellValue[OleVariant(AddItem('Item 2')),OleVariant(1)] := 'Item 1.2';
CellValue[OleVariant(AddItem('Item 3')),OleVariant(1)] := 'Item 1.3';
end;
end
|
505
|
How can I display my rows or items as a table
![](images/exgridq505.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
ViewMode := EXGRIDLib_TLB.exTableView;
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Item 1')),OleVariant(1)] := 'Item 1.1';
CellValue[OleVariant(AddItem('Item 2')),OleVariant(1)] := 'Item 1.2';
CellValue[OleVariant(AddItem('Item 3')),OleVariant(1)] := 'Item 1.3';
end;
end
|
504
|
How can I display my rows as cards
![](images/exgridq504.png)
with Grid1 do
begin
DrawGridLines := EXGRIDLib_TLB.exAllLines;
ViewMode := EXGRIDLib_TLB.exCardView;
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewFormat] := '1';
ViewModeOption[EXGRIDLib_TLB.exCardView,EXGRIDLib_TLB.exCardViewHeight] := OleVariant(36);
Columns.Add('Column 1');
Columns.Add('Column 2');
with Items do
begin
CellValue[OleVariant(AddItem('Card 1')),OleVariant(1)] := 'Card 1.1';
CellValue[OleVariant(AddItem('Card 2')),OleVariant(1)] := 'Card 1.2';
CellValue[OleVariant(AddItem('Card 3')),OleVariant(1)] := 'Card 1.3';
end;
end
|
503
|
How can I avoid focusing a new cell, when user presses an arrow, page, home or end key, while the editor is opened
![](images/exgridq503.png)
with Grid1 do
begin
DefaultEditorOption[EXGRIDLib_TLB.exLeftArrow] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exRightArrow] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exUpArrow] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exDownArrow] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exHomeKey] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exEndKey] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exPageUpKey] := OleVariant(0);
DefaultEditorOption[EXGRIDLib_TLB.exPageDownKey] := OleVariant(0);
(IUnknown(Columns.Add('Edit')) as EXGRIDLib_TLB.Column).Editor.EditType := EXGRIDLib_TLB.EditType;
(IUnknown(Columns.Add('Edit')) as EXGRIDLib_TLB.Column).Editor.EditType := EXGRIDLib_TLB.EditType;
with Items do
begin
CellValue[OleVariant(AddItem(OleVariant(0))),OleVariant(1)] := OleVariant(1);
end;
with Items do
begin
CellValue[OleVariant(AddItem(OleVariant(2))),OleVariant(1)] := OleVariant(3);
end;
end
|
502
|
How can I expand predefined items in a drop down list editor as I type
![](images/exgridq502.png)
with Grid1 do
begin
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
with (IUnknown(Columns.Add('DropDown')) as EXGRIDLib_TLB.Column) do
begin
Def[EXGRIDLib_TLB.exCellValueFormat] := OleVariant(1);
with Editor do
begin
Option[EXGRIDLib_TLB.exExpandOnSearch] := OleVariant(True);
EditType := EXGRIDLib_TLB.DropDownListType;
DropDownAutoWidth := EXGRIDLib_TLB.exDropDownEditorWidth;
AddItem(1,'<b>CObject</b> class',OleVariant(1));
InsertItem(2,'<b>CCmdTarget</b> class',OleVariant(2),OleVariant(1));
InsertItem(3,'<b>CWnd</b> class',OleVariant(3),OleVariant(2));
InsertItem(6,'<bgcolor=10A0E0><fgcolor=F0F0F0>S y n c</fgcolor>',OleVariant(1),OleVariant(1));
AddItem(4,'Exceptions',OleVariant(1));
InsertItem(7,'<b>System</b> Exceptions',OleVariant(2),OleVariant(4));
AddItem(5,'File Services',OleVariant(2));
end;
end;
with Items do
begin
AddItem(OleVariant(1));
AddItem(OleVariant(2));
end;
end
|
501
|
How can I add an extra button to a date picker editor
![](images/exgridq501.png)
with Grid1 do
begin
Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' +
'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' +
'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' +
'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
DefaultItemHeight := 20;
with (IUnknown(Columns.Add('Date')) as EXGRIDLib_TLB.Column).Editor do
begin
EditType := EXGRIDLib_TLB.DateType;
AddButton('B1',OleVariant(2),OleVariant(1),'This is a bit of text that''s shown when the cursor hovers the button B1',Null,Null);
ButtonWidth := 20;
end;
with Items do
begin
AddItem(OleVariant(0));
AddItem(OleVariant(1));
end;
end
|